home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Diamond Collection / The Diamond Collection (Software Vault)(Digital Impact).ISO / cdr02 / idex213.zip / INFODEX.REV < prev    next >
Text File  |  1995-02-14  |  61KB  |  1,272 lines

  1.                          Infodex Revision History
  2.  
  3.  
  4. 02-14-95 ■ Version 2.13
  5.  
  6.          . Found and fixed a major problem where deleting a field in
  7.            the database (after the database had been created) could
  8.            cause corruption in subsequent fields of the database.  If
  9.            the field being deleted was the last field in the database,
  10.            this problem would not be noticed.
  11.  
  12.          . Shortened the registration number field on the Register
  13.            Infodex screen to 12 characters.
  14.  
  15.          . Modified the online help system to only open the help file
  16.            when F1 is pressed.  Previously, the help file was open the
  17.            entire time that the program was running.
  18.  
  19.          . Updated database libraries to the newest version.  This
  20.            can cause a noticeable increase in speed, especially when
  21.            rebuilding the database index.
  22.  
  23.          . Changed several of the window and browser drawing routines
  24.            to be taken from our internal libraries.
  25.  
  26.          . Cleaned up several of the display issues when moving controls
  27.            on the layout screen.
  28.  
  29.          . Changed the About box to a standard stAboutBox from our
  30.            internal libraries.
  31.  
  32.          . Updated copyright notices.
  33.  
  34.          . Enabled the use of up and down arrow keys on all dialogs in
  35.            place of the Tab and Shift-Tab keys.
  36.  
  37.          . Fixed a problem where pressing Tab in the search dialog
  38.            pick list did not advance the cursor to the Ok button.
  39.            Also added "Alt-S" support to the pick list to set the focus
  40.            on the search string control.
  41.  
  42.          . Enhanced the printing routines and added a status display
  43.            that allows the user to terminate in the middle of the
  44.            printing process by pressing Escape.
  45.  
  46.          . Added the ability to print all records in the database at
  47.            one time.
  48.  
  49.          . Added a message box to the Previous and Next routines to
  50.            warn the users when the database "wraps" around to the first
  51.            or last message in the database.
  52.  
  53.          . Added a custom exit procedure to be executed in the event
  54.            that a Runtime error occurs.
  55.  
  56.          . Changed the way Infodex looks for the default path.  If a
  57.            "SET INFODEX=" statement is not present in the DOS PATH, it
  58.            then uses the directory when INFODEX.EXE resides as the
  59.            default path.
  60.  
  61.  
  62. 11-08-94 ■ Version 2.12
  63.  
  64.            . Fixed a display problem where the browser's 3-d appearance
  65.              was not evident until the second time it was initialized.
  66.  
  67.            . Began initial coding for importing an Infodex v1.x database,
  68.              using the file ISAMIO.EXE to generate a comma-delimited ASCII
  69.              file which can be imported with Infodex version 2.  (The only
  70.              templates which may not import properly from version 1 are the
  71.              recipes and small notes templates.  Issues related to these
  72.              two templates will be addressed in a future version.  All
  73.              other templates import fine.  Users will need to modify the
  74.              field names for databases that are imported.  Users may also
  75.              desire to modify the default field placement.)
  76.  
  77.            . Decreased the maximum column that fields can extend to by 1.
  78.              This makes sure that fields with delimiters cannot extend
  79.              immediately up to the dividing line.
  80.  
  81.            . Changed the default color of the field delimiters to light
  82.              gray on blue instead of white on blue.
  83.  
  84.            . Fixed a problem where importing a text file could cause
  85.              an error creating the header file.  This occurred because
  86.              the import file had a field that was blank in every record.
  87.              The new code makes sure that each field is at least 1
  88.              character long when creating the new database.  (If the user
  89.              does not want this field present, they can delete it after
  90.              the database has been imported.)
  91.  
  92.            . Added a Notes indicator character (#14) to the end of each
  93.              memo field on the entry screen.  This allows mouse users to
  94.              simply click on the notes character to view or modify the
  95.              contents of the memo field.  Note: The memo field text will
  96.              be shown in read-only mode, unless the record is actually
  97.              being edited.  If the record is being edited, the text can
  98.              be modified as usual.
  99.  
  100.            . Removed an unnecessary color set from code to prepare for
  101.              an eventual global color set.
  102.  
  103.            . Moved the Layout button to the Other Options screen, and
  104.              moved the Print button to the main editing screen to make
  105.              printing features more easily available to users.
  106.  
  107.  
  108. 10-15-94 ■ Version 2.11
  109.  
  110.            . Made the default display length for numeric fields to be
  111.              15, instead of 5, when importing a database, or re-creating
  112.              a missing .INF file.
  113.  
  114.            . Fixed a problem where entering and exiting from Layout mode
  115.              would cause the decimal places value of each numeric field
  116.              to be reset to 0.  Field now retains its original decimal
  117.              places value.
  118.  
  119.            . Added support to allow the user to decide whether or not
  120.              field delimiters should be used.  Added a check box to
  121.              the configuration options screen for this purpose.
  122.  
  123.            . Fixed a minor problem where the UseSaveMode variable
  124.              was not being read from the INFODEX.INI file properly.
  125.              UseSaveMode was always being set to true (which is the
  126.              default).
  127.  
  128.            . Modified code to clean up the process that redraws field
  129.              delimiters when controls are moved around on the layout
  130.              screen.
  131.  
  132.            . Fixed a screen drawing problem on the layout screen where
  133.              some added headers were not being drawn when the screen
  134.              was first displayed.
  135.  
  136.            . Fixed a problem where users could not Delete a record
  137.              from the database.  Problem would appear after new fields
  138.              had been added to or deleted from the database, or after
  139.              record lengths were resized.  When these processes were
  140.              initialized, the AddNulls variable was set to False instead
  141.              of True, causing routines not to add empty keys to the
  142.              index file.  If you are experiencing any problems such as
  143.              this, perform the following steps to correct it:  1.  Copy
  144.              the database files to a separate sub-directory, in case
  145.              something goes wrong.  2.  Erase the index file.  (For
  146.              example, if your database is named 'TEST'(.DAT), erase the
  147.              file TEST.IX.)  3.  Execute Infodex and open the database.
  148.              An error message will occur telling you the index file is
  149.              missing.  When it prompts you to rebuild the file, select
  150.              Yes.  When the rebuilding process is complete, you should
  151.              be able to edit your data file and, if necessary, delete
  152.              records.
  153.  
  154.            . Removed some obscure trouble-shooting code that was left
  155.              over in a reorganization process routine.
  156.  
  157.            . Dramatically increased the speed of searching for the
  158.              first and last records in the database.  A noticeable
  159.              slowdown was apparent on large databases with the old
  160.              method.  The new method is extremely fast.
  161.  
  162.            . Fixed a problem where a RunTime Error #213 would occur
  163.              when attempting to import a database that contained a numeric
  164.              field.  Key creation routine was attempting to access
  165.              an index value that was out of range.
  166.  
  167.            . Disabled I/O checking before attempting to erase and
  168.              recreate the .INF file in the WriteINFFile routine.
  169.              This reduces the chance for errors if the file cannot
  170.              be erased or recreated successfully.
  171.  
  172.            . Fixed a problem where the .INF file was being opened
  173.              before the database was opened, and it was not being
  174.              closed until the database was closed.
  175.  
  176.            . Fixed an incorrect version number displayed on the
  177.              About box.
  178.  
  179.  
  180. 10-11-94 ■ Version 2.10 
  181.  
  182.            . Added a check to warn the user when importing if the
  183.              database filename already exists.  If it does, the user
  184.              has the option of cancelling the operation or continuing
  185.              by overwriting the existing file.
  186.  
  187.            . Fixed a problem in the import routine which did not
  188.              recognize successive commas as representing blank fields.
  189.              Some programs export using a set of empty quotes, while
  190.              others simple put a successive field delimiter.  Infodex
  191.              now recognizes both types.
  192.  
  193.            . Reworked the display of status windows when creating and
  194.              opening a database.  New method displays more windows for
  195.              a lesser period of time, giving the user a better indication
  196.              of exactly what operation is being performed.
  197.  
  198.            . Dramatically increased the speed at which Infodex opens
  199.              an existing database.  (A call to GetFirstRecord was causing
  200.              a significant speed degradation in large data files.  When
  201.              a file is opened, it is automatically located at the first
  202.              record, making this call unnecessary.)  Large databases now
  203.              load extremely fast.
  204.  
  205.            . Added support for importing a delimited ASCII text file.
  206.              (Typically a quote/comma delimited file.)  Infodex adds
  207.              default field names, and supplies a default layout.
  208.              Layout can be easily changed by the user.
  209.  
  210.            . Removed the Print button from the main editing screen
  211.              and replaced it with an "Other" button.  The Other button
  212.              calls up a dialog box with the Print and Export buttons
  213.              displayed.
  214.  
  215.            . Added support for exporting the database records into
  216.              a comma delimited file.
  217.  
  218.            . Added support for monochrome mode by cleaning up the
  219.              existing display for a more attractive appearance.
  220.  
  221.  
  222. 10-01-94 ■ Version 2.06  (Internal BETA Version.  Not Released.)
  223.  
  224.            . Added support to make the data records from Infodex 2.00
  225.              through 2.02 import and create a field layout *similar*
  226.              to the original layout found in these versions.
  227.              (Eventually, a separate conversion unit may be created
  228.              to reduce code size, increasing the likelihood of having
  229.              a Real Mode version.)
  230.  
  231.            . Fixed a problem in the Browser where pressing ESCAPE did
  232.              not always return to the same record that was displayed
  233.              before the Browser was initialized.
  234.  
  235.            . Modified the BuildKey routine to trim the leading spaces
  236.              off of numeric key strings.  This makes it much easier
  237.              for users to search for a numeric value in the database.
  238.  
  239.            . Fixed a problem where the pressing ENTER on a record in
  240.              the Browser screen would not always cause the exact
  241.              record to be displayed.  The Browser was going to the
  242.              first record that started with the key string that was
  243.              highlighted.  Changed routine to make sure an exact match
  244.              was found, return the reference number and move to that
  245.              location in the database file.
  246.  
  247.            . Fixed an obscure problem where trying to Open a non-
  248.              existent file from the Open File screen and then hitting
  249.              escape would cause a couple of error message boxes to
  250.              appear.  Made sure that the selected file exists before
  251.              attempting to do any operations.
  252.  
  253.            . Updated the Delete File routine to make sure that all
  254.              files associated with a database file (.DAT, .IX, .INF,
  255.              .DBH, & .DIA) were being deleted.
  256.  
  257.            . Fixed a problem where the tab and down arrow keys were
  258.              not working when focused on the New button.
  259.  
  260.            . Added a simple error check to make sure a for loop
  261.              cannot be executed on the master field list collection
  262.              if there is not at least one field within the list.
  263.  
  264.            . Moved the writing of the field information from the
  265.              .FLD file to the .INF file.  This eliminates one of the
  266.              files needed for database maintenance and will make the
  267.              transition from an older version of Infodex to a newer
  268.              one much easier.
  269.  
  270.            . Added a "Version=' line to the .INF file to indicate
  271.              the version of Infodex used to create and write the data
  272.              files.  This may be useful in future versions if a
  273.              conversion routine/utility is needed.
  274.  
  275.            . Added commas between the row and column fields on the
  276.              Edit Field screen to better show the user the format.
  277.  
  278.            . Modified the Edit Field screen to protect the Field
  279.              Length control from being modified if the field type
  280.              is a number.  The Display Length should always be set
  281.              long enough to display any number contained in the
  282.              associated field of the database.
  283.  
  284.            . Decreased the allowable decimal places on a numeric
  285.              field from 10 to 4.
  286.  
  287.            . Made sure that memo fields were being trimmed properly
  288.              when a user decreases the length of a memo field.
  289.  
  290.            . Fixed a problem where intermittent hangs would occur
  291.              after changing the size of a field within the record
  292.              layout.  Problem was due to a call to FreeMem using an
  293.              old size parameter.  Moved the FreeMem call to circum-
  294.              vent this problem.
  295.  
  296.            . Created a series of routines to be executed when a user
  297.              resizes an existing database field.  A temporary file is
  298.              created while the process is executed and Infodex restruc-
  299.              tures the existing database fields.
  300.  
  301.            . Increased the speed of the routine that sets the tab
  302.              order when New or Edit is selected from the editing
  303.              screen.  Converted coordinates for each field to a
  304.              string in order to store them in a sorted string array.
  305.  
  306.            . Added an option flag to make sure that all numeric fields
  307.              are right-justified.
  308.  
  309.            . Modified code to allocate enough memory for the maximum
  310.              possible length of a field's displayed width on the screen.
  311.              This will allow users to increase a field's displayed
  312.              length without trashing memory.
  313.  
  314.            . Formatted the display of numeric fields within the browser
  315.              screen so that the formatted string is only as wide as
  316.              the display length for the field, and that the number fits
  317.              accordingly into the allotted length.
  318.  
  319.            . Modified code for the browser screen to make each column
  320.              only as wide as the display length of each field, or the
  321.              header of each field, whichever is larger.  This may
  322.              allow some databases to fit more information within the
  323.              limits of the Browser screen.
  324.  
  325.            . Added a check to make sure that a user cannot create
  326.              a field from the Edit Field dialog box that extends
  327.              past the bounds of the layout area.
  328.  
  329.            . Added a check to make sure that a user cannot enter
  330.              a display length for a field that is greater than the
  331.              actual field length.  If the display length is found to
  332.              be greater, it is set equal to the field length.
  333.  
  334.            . Added code to protect the Decimal Places field on the
  335.              Edit Field dialog box based on the selection of the
  336.              field type.  The Decimal Places field should only be
  337.              accessible if the field type is a numeric field.
  338.  
  339.            . Fixed a problem where the field type control on the
  340.              Edit Field dialog box was being protected, even if the
  341.              user was trying to add a new control to an existing
  342.              database.
  343.  
  344.            . Added a Title Bar Display section to the Register
  345.              Infodex screen to allow registered users to customize
  346.              the display on the Infodex title bar.  Added the new
  347.              variable to the INFODEX.INI file.
  348.  
  349.  
  350. 09-25-94 ■ Version 2.05  (Internal BETA Version.  Not Released.)
  351.  
  352.            . Added support for a "Decimal Places" field on the Edit
  353.              Field dialog box.  Implemented support for this feature
  354.              when adding numeric fields to the editing screen.
  355.  
  356.            . Added code to protect the field type control on the
  357.              Edit Field dialog box after a database is created.  This
  358.              is done to make sure that users cannot attempt to change
  359.              a character field to a numeric field, (and similar scenarios)
  360.              which would cause corruption of the database.
  361.  
  362.            . Added a procedure to dynamically change the tab order,
  363.              based on the layout of the fields within the layout dialog
  364.              box.  The tab order will start at the top left, move to
  365.              any field directly to its right, and then go to the next
  366.              line and repeat the process.
  367.  
  368.            . Added a line of text to the top line of the Infodex back-
  369.              ground screen that displays either 1) the registration
  370.              name of the REGISTERED user, or 2) the text "UNREGISTERED
  371.              Version" if the user has not yet registered Infodex.
  372.  
  373.            . Changed the order of the initialization code to make
  374.              processing the path to Infodex and reading the file
  375.              INFODEX.INI the first two tasks.
  376.  
  377.            . Removed unnecessary procedure declaring new instances of
  378.              pointers.  These pointers (which contain the record data)
  379.              are allocated using GetMem later in the program.
  380.  
  381.            . Made sure that controls added to the layout screen are
  382.              added as read-only, to prevent the modification of the
  383.              displayed data.
  384.  
  385.            . Modified code to automatically increment the new row field
  386.              when adding a control to the layout screen, based on the
  387.              current number of editing fields on the screen.
  388.  
  389.            . Modified code to make the focus return to the first editing
  390.              field on the layout screen after a user selects one of the
  391.              move buttons or selects Cancel when attempting to add
  392.              a new control.
  393.  
  394.            . Fixed a problem where the EqualRec routine was returning
  395.              the value of False each time it was called, even if the
  396.              two records should have compared.  When editing a record,
  397.              if no changes had been made and the user pressed Escape,
  398.              Infodex would prompt to save the changes.  Added code to
  399.              compare each field in the old and new records individually,
  400.              instead of using a structural compare.
  401.  
  402.            . Removed tab order field from the edit control dialog
  403.              box.  Although the tab order is still maintained within
  404.              each field record, it is not used at this time.
  405.  
  406.            . Fixed a problem where a changing a field name on the
  407.              layout screen did not always redraw properly.  If the
  408.              new name was shorter than the old name, "left-over"
  409.              characters would still be displayed.  Modified code to
  410.              pad all field names to 15 characters, both on the layout
  411.              and actual editing screens.
  412.  
  413.            . Fixed a problem on the search screen where the dialog
  414.              box would not be initialized properly if the search field
  415.              pick list had less than 4 or 5 items in it.  Added
  416.              commands to make sure that the pick list was initialized
  417.              to its full height, allowing the scroll bars to be added
  418.              properly.
  419.  
  420.            . Hid the display of the Cancel button on the layout screen
  421.              when modifying an existing database's layout.  Due to
  422.              the restructuring of added or deleted fields when modifying
  423.              the layout, users must select Done instead.
  424.  
  425.            . Added the capability for users to delete a field from
  426.              the layout screen after a database has been created.
  427.              The database is automatically reorganized to delete
  428.              the proper field.  Fields can be deleted from anywhere
  429.              within the record structure.
  430.  
  431.  
  432. 09-23-94 ■ Version 2.04  (Internal BETA Version.  Not Released.)
  433.  
  434.            . Fixed a problem where a reorganization of the database
  435.              after adding a numeric field was causing the database
  436.              to be corrupted.  The offset of the numeric field was
  437.              one byte too large.
  438.  
  439.            . Added support for users to add a field to the layout
  440.              screen after a database has been created.  The database
  441.              is automatically reorganized to add a new field of the
  442.              type specified.  The field is automatically added to the
  443.              end of the record structure.
  444.  
  445.            . Added support for Infodex to erase the old editing screen
  446.              and redraw a new one when the Layout of the screen has
  447.              been changed.
  448.  
  449.            . Added a Layout button to the main database editing screen
  450.              to allow users to modify the layout of the fields at any
  451.              time after a database has been originally created.
  452.  
  453.            . Added a command to clear each editing field on the create
  454.              new database screen each time a character is entered as
  455.              the first character when a field receives the focus.
  456.  
  457.            . Eliminated redundant number displays in front of each
  458.              field on the create new database screen.
  459.  
  460.            . Changed the "Prompt" text on the top of the create
  461.              new database screen to display "Field Name", "Type",
  462.              and "Length".
  463.  
  464.            . Added a status window when Infodex attempts to open
  465.              an existing database or create a new database.  If
  466.              the time delay is substantial, this will inform the
  467.              user what is happening.
  468.  
  469.  
  470. 09-10-94 ■ Version 2.03  (Internal BETA Version.  Not Released.)
  471.  
  472.            . Made sure that the sum of all field lengths was not
  473.              longer than 65530 characters when creating a new template.
  474.              In order to store records, they must be less than 64K.
  475.  
  476.            . Made sure that users could not create a character field
  477.              less than 1 or greater than 254 characters long when
  478.              creating a new template.  Also made sure that memo fields
  479.              were within the boundaries of 1 to 65530.
  480.  
  481.            . Moved the command that closes the header file to complete
  482.              this operation immediately after the fileblock is opened.
  483.              This should reduce the chance of conflicts in network
  484.              situations.
  485.  
  486.            . Added commands to free any memory within the Done
  487.              destructor that had been dynamically allocated to contain
  488.              the record data.
  489.  
  490.            . Fixed a typo on the registration nag screen that stated
  491.              that Infodex was $29.95, when the actual price was
  492.              $34.95.
  493.  
  494.            . Made sure that Infodex was accurately warning a user
  495.              who wanted to stop editing the current record without
  496.              saving his/her changes.
  497.  
  498.            . Added the ability to print the first 256 characters of
  499.              a memo field on a printout.  Infodex now issues a page
  500.              break between each record.
  501.  
  502.            . Removed ability to View templates.  Since the user can
  503.              now create templates dynamically, this feature is no
  504.              longer needed.
  505.  
  506.            . Fixed a problem where selecting a record from the Browser
  507.              screen after a search process would not always find the
  508.              correct record.  (Code was set to search for selected
  509.              text based on the first key field, instead of the current
  510.              key field.)
  511.  
  512.            . Changed the search screen to display a pick list contain-
  513.              ing all of the indexed fields, instead of displaying a
  514.              collection of radio buttons.  Users can select one field
  515.              from the pick list to search for the specified Search
  516.              String.
  517.  
  518.            . Removed display sections ([ ]) on the status line at the
  519.              bottom of the screen.  Since a database can have several
  520.              memo (notes) fields, a Notes indicator is not necessary
  521.              or practical.  The other two fields (Read-Only indicator
  522.              and Status indicator) were not being used.
  523.  
  524.            . Lengthened the Nested Field display for memo fields out
  525.              to the maximum size allowable.  This gives users a good
  526.              visual indication of what text is maintained within the
  527.              first 50 (approx.) characters of the memo field.
  528.  
  529.            . Made a prompt width of 15 the standard for field prompts.
  530.              This should allow enough room for most field names, while
  531.              keeping it short enough to allow sufficient room for data
  532.              entry fields.
  533.  
  534.            . Modified the routine that changes the Database descrip-
  535.              tion.  The entire template does not need to be redrawn
  536.              when the description is changed.  The title is simply
  537.              updated on the main dialog box.
  538.  
  539.            . Removed the Notes button from the right side of the
  540.              editing dialog box.  Notes fields (a.k.a. Memo fields)
  541.              can now be edited by pressing ENTER on the nested Notes
  542.              fields located inside of the editing area.
  543.  
  544.            . Added support for Infodex to read files created with
  545.              versions 2.00 through 2.02.  (Included in this code is
  546.              a translation/cleanup procedure for the notes fields
  547.              contained in the old databases.  Apparently, some
  548.              corruption was contained on the end of the Notes field
  549.              text when it was being edited, even though it was not
  550.              visible.  When the databases are imported into this
  551.              new version, the corruption should be removed.)
  552.  
  553.            . Added the capability for Infodex to create a database
  554.              dynamically, based on data that the user enters.  Users
  555.              can specify that they want to create alphanumeric fields,
  556.              numeric fields, or memo fields.
  557.  
  558.  
  559. 08-19-94 ■ Version 2.02
  560.  
  561.            . Added support to read "The High-Tech Trader" data
  562.              files created by The Bertha BBS.  These data files
  563.              contain computerized "classified ads" to allow buyers
  564.              and sellers to place and respond to product ads.  To
  565.              download the latest classified ads from The High-Tech
  566.              Trader, call The Bertha BBS at (218) 924-2060.
  567.  
  568.  
  569. 06-21-94 ■ Version 2.01
  570.  
  571.            . Fixed a problem where a RunTime Error #216 (general
  572.              protection fault) would occur when closing a database
  573.              file if the user had modified the database description
  574.              or field names during the session.  This problem did
  575.              not cause data loss.  Problem was caused by referencing
  576.              a nil pointer.
  577.  
  578.  
  579. 05-26-94 ■ Version 2.00
  580.  
  581.            . Released to the general public.
  582.  
  583.  
  584. 05-25-94 ■ Version 1.60  (Internal Revision - Not Released)
  585.  
  586.            . Fixed intermittent problem with the Help system.  Calling
  587.              up the Help Topic Index would not always allow a topic to
  588.              be selected for viewing.
  589.  
  590.            . Added a check to the Cancel Edit routine to compare whether
  591.              or not the user has made any changes to the record before
  592.              asking them if they want to save the changes.  If no changes
  593.              have been made, the Cancel procedes without querying the
  594.              user.
  595.  
  596.            . Modified code to make the Template Dialog (editing screen)
  597.              global to the Master Template Object, rather than a local
  598.              variable that is passed between procedures.
  599.  
  600.            . Added support for the Ctrl-PgUp key combination to trigger
  601.              a call to get the first record in the database and for the
  602.              Ctrl-PgDn key combination to trigger a call to get the
  603.              last record in the database.  Also added support for using
  604.              the F10 key to save the current record.
  605.  
  606.            . Modified notes field code to only initialize (create) the
  607.              notes field once each time a database is created or opened,
  608.              and the notes text is reinitialized when the Notes field
  609.              is viewed or edited.
  610.  
  611.            . Moved mouse close-box handling for the editing template
  612.              to a post-edit routine to handle events based on whether
  613.              the template is in Protected mode or not.
  614.  
  615.            . Removed support for /DEBUG mode.  New object-oriented
  616.              fileblock handling does not directly support this feature.
  617.  
  618.            . Added support for the browser screen to move the high-
  619.              light bar to the first record matching the letter typed
  620.              by the user.
  621.  
  622.            . Fixed a problem in the search routine where the browser
  623.              would be initialized even in the event that there were
  624.              no records matching the specified search string.  Added
  625.              an additional check to make sure that the search string
  626.              was located within the current key string after the
  627.              search process was completed.
  628.  
  629.            . Added a status routine to the rebuild procedure as an
  630.              activity indicator for the user.
  631.  
  632.            . Fixed a problem where the sequential pointer was not
  633.              being reset properly after selecting a record from the
  634.              browser.  This would cause a Next or Previous operation
  635.              to fail, bringing up an inaccurate record.
  636.  
  637.            . Turned off word-wrapping in the notes fields.
  638.  
  639.            . Moved the RebuildData routine from each individual template
  640.              into the RebuildDataFile routine in the Master Template
  641.              Object to reduce code size.  This was made possible by
  642.              using the new object-oriented database routines.
  643.  
  644.            . Fixed a problem where the Rebuild process was generating
  645.              an Error #10125, ("Key Too Long") when attempting to
  646.              rebuild STSI's software database.  This problem occurred
  647.              because the length of the notes field had been changed
  648.              after the database was originally created.  Changed the
  649.              size of the software database notes field back to 2048
  650.              bytes.
  651.  
  652.            . Converted notes fields in all templates from Asciiz
  653.              strings to individual character strings.  This allows
  654.              the use of different size notes fields for each template.
  655.              A list of note field sizes will be posted in the documenta-
  656.              tion file.
  657.  
  658.            . Fixed a problem where an error "RecordType Not Defined"
  659.              was occuring after creating a new database.  This problem
  660.              was caused when a parent object's virtual method did
  661.              not appear to be overridden, even though it was.  (Problem
  662.              was related to VMT's in the parent object's constructors.)
  663.  
  664.            . Eliminated use of the 3rd variable (Temporary) for each
  665.              instance of a template object.  The new object-oriented
  666.              database routines do not require this variable.
  667.  
  668.            . Reworked code to use object-oriented database manage-
  669.              ment routines.  Moved several more routines into the
  670.              Master Template Object to simplify the code.
  671.  
  672.            . Moved the OpenFile, CreateFile, CloseFile, and
  673.              RebuildFile routines into the Master Template Object
  674.              to simplify the code.
  675.  
  676.  
  677. 05-18-94 ■ Version 1.50  (Internal Revision - Not Released)
  678.  
  679.            . Added a pre-defined limit for the number of records that
  680.              non-registered users may add to a database.  Limit is
  681.              currently set at 50 records.
  682.  
  683.            . Added support for an integrated context-sensitive help
  684.              system.
  685.  
  686.            . Added a "BBS Sysop" field to both of the BBS templates.
  687.  
  688.            . Fixed a problem where the Database Description was not
  689.              being reset when a database was closed, causing it to
  690.              be displayed on the top of the View Template screen.
  691.  
  692.            . Cleaned up the SetupSearchDefaults routine to pass a
  693.              string-array back filled with the appropriate field names.
  694.              Eliminated the need to set Y coordinates and a NumStrings
  695.              variable.
  696.  
  697.            . Fixed a problem where the View Template miniature dialog
  698.              box could not be moved.  Added a command to handle any
  699.              move events.
  700.  
  701.            . Added a fill character to be displayed in the data fields
  702.              when the user views a template.  This allows the user to
  703.              see the length of each field in the template.
  704.  
  705.            . Changed the template list sub-menus into one common
  706.              pick list.  When the Create or View options are selected,
  707.              the pick list is repositioned.  This allowed the addition
  708.              of a scroll bar and mouse support for the scroll bar.
  709.  
  710.            . Modified printing routine to only go to the first record
  711.              after the printing process if the database was printed
  712.              successfully.  If Cancel is selected, the database will
  713.              stay on the current record.
  714.  
  715.            . Added a confirmation message box when users press
  716.              Escape or click the right mouse button when they are
  717.              editing a record.  Message box queries whether or not
  718.              the user wants to save the changes to the current record
  719.              before exiting the editing process.
  720.  
  721.            . Modified browser rows to display two blank characters
  722.              between each column.
  723.  
  724.            . Added a status window when Infodex initializes the
  725.              database manager, to inform the user what is happening.
  726.  
  727.            . Increased the pad width for the Search Fields listed on
  728.              the Search dialog box from 23 to 30.
  729.  
  730.            . Added support for a startup database file to be written
  731.              to the INFODEX.INI file.  When Infodex is executed, it
  732.              checks this file to automatically load a default database.
  733.              If a command line option (filename) is specified, it will
  734.              override the startup database file.
  735.  
  736.            . Set up temporary variables on screens where the settings
  737.              of the INI file are modified to make sure that the
  738.              settings are not modified directly.  Settings are updated
  739.              to the actual variables only when Ok is selected.
  740.  
  741.            . Created destructors for each of the template objects.
  742.  
  743.            . Completed the printing dialog box to allow users to
  744.              specify which port or filename to send output to.
  745.  
  746.            . Added the ability to add and modify a database description
  747.              for each database created.  This description will appear
  748.              at the top of the template during the editing process.
  749.  
  750.            . Fixed a problem in the View Template routine where the
  751.              dialog boxes were not being drawn and displayed.
  752.  
  753.            . Added Generic Template #1, which contains 18 fields of a
  754.              45 character length string, along with a notes field.
  755.              Added the capability for the user to change the field
  756.              names dynamically.
  757.  
  758.            . Adjusted the AutoRepeatTicks and AutoDelayTicks settings
  759.              to change the rate at which the mouse repeats after an
  760.              initial click and after an auto-repeat click.  Set
  761.              AutoRepeatTicks to 2, and set AutoDelayTicks to 18.
  762.  
  763.            . Fixed a problem where an Isam Error # 10210 would occur
  764.              when attempting to create a new database.  The error
  765.              would state that the specified key could not be found,
  766.              due to the fact that the FindRecord routine is executed
  767.              when the database is opened.  Fixing this problem also
  768.              fixed another glitch where two error messages would be
  769.              issued if a search string could not be found during the
  770.              search process.
  771.  
  772.            . Modified code in the stTVZifChoiceBox routine to
  773.              display the dialog box in 3-D mode, using an out-dented
  774.              look.
  775.  
  776.            . Fixed a problem in the ModifyRecord routine that was
  777.              causing Infodex to hang in the middle of this routine.
  778.              Although a new temporary pointer (to a byte) had been
  779.              created, it had not been defined as pointing to a
  780.              variable (object).  Created a new global object and
  781.              pointer, and defined it as pointing to the new global
  782.              object.  (This problem was not consistent, but occurred
  783.              the most often after the Notes field was accessed.)
  784.  
  785.            . Increased size of Notes field in each template to
  786.              2K (2048 bytes).
  787.  
  788.            . Added support to all templates for report printing.
  789.              (All records only)
  790.  
  791.            . Modified code in the Browser to allow the user to
  792.              press Escape without changing the current record that
  793.              was being viewed prior to initializing the Browser.
  794.              The only time the record will change is if the user
  795.              presses ENTER or selects a record with the left-mouse
  796.              button.
  797.  
  798.  
  799. 04-26-94 ■ Version 1.40  (Internal Revision - Not Released)
  800.  
  801.            . Fixed a problem where the command line parameters were
  802.              not properly loading a file when /DEBUG was also speci-
  803.              fied on the command line.
  804.  
  805.            . Added a "Please Wait" window to the Open and Delete file
  806.              routines to notify the user that Infodex is reading the
  807.              current directory.  This process can take a little while
  808.              to complete on large directories.
  809.  
  810.            . Added a "Please Wait" window to the Rebuild Index File
  811.              process to notify the user that activity is taking place.
  812.  
  813.            . Added support for a command line switch called /DEBUG
  814.              to dynamically enable use of extra commands to
  815.              lock and unlock the records and the database for testing
  816.              purposes only.
  817.  
  818.            . Added code to allow Infodex to automatically "remember"
  819.              the coordinates of the Browser from the last time it was
  820.              used.  These coordinates are stored in the .INF file and
  821.              read each time a database file is loaded from disk.
  822.  
  823.            . Added an error message that informs the user that the
  824.              filename specified on the command line does not exist.
  825.  
  826.            . Fixed a problem where pressing Escape on the Open File
  827.              screen would produce an error message that the filename
  828.              did not exist.
  829.  
  830.            . Changed the wording of the "Use Save Mode" option on
  831.              the configuration options screen to be more understand-
  832.              able.
  833.  
  834.            . Rewrote the AddRecord, DeleteRecord, and ModifyRecord
  835.              routines to lock the database before attempting to make
  836.              any changes.
  837.  
  838.            . Fixed a problem where the current record number was not
  839.              being properly set when the user pressed ENTER or Escape
  840.              on the browser screen.  This caused the record pointer to
  841.              not be set properly, causing problems when attempting to
  842.              search for or delete records.
  843.  
  844.            . Added a warning message box to users to change the
  845.              value of the Network Users field during Infodex.  Since
  846.              this value can only be initialized when Infodex is
  847.              initially started, Infodex must be exited and restarted
  848.              in order for the new value to be used.
  849.  
  850.            . Converted the Network Users field to a numeric field
  851.              internally, and specified a possible range between 0
  852.              and 65535.
  853.  
  854.            . Added a close box to the browser screen to allow mouse
  855.              users to quickly close the browser.
  856.  
  857.            . Added support for a refresh delay field on the configura-
  858.              tions options screen to allow users to specify the amount
  859.              of time before the screen should be updated with any
  860.              changes made to the current record on other workstations
  861.              on a network.
  862.  
  863.            . Implemented changes in libraries and recompiled program.
  864.  
  865.            . Added a configuration options screen to allow users to
  866.              specify a network type and whether or not Save Mode
  867.              should be used when working with files.
  868.  
  869.            . Set minimum and maximum size limits for the Notes field
  870.              of each template to prevent redraw problems that would
  871.              occur when the width was reduced to less than 10 (approx.)
  872.              characters in size.
  873.  
  874.            . Fixed a problem where the RebuildDataFile routine was not
  875.              working properly.  Since this routine was calling the
  876.              BuildKey routine with an untyped var parameter, the var
  877.              parameter could not be set up with a .Init constructor,
  878.              which is mandatory for an object with virtual methods.
  879.              Removed the BuildKey virtual method from the object and
  880.              placed it separate, so it would not be mandatory to call
  881.              the .Init constructor before-hand.
  882.  
  883.            . Added the ability for Infodex to "remember" the position
  884.              of the notes field for each separate database created by
  885.              the user.  This allows users to position the notes field
  886.              in their favorite spot, customizing it to their individual
  887.              tastes.
  888.  
  889.            . Fixed a problem where pressing the Escape key while
  890.              the Search screen was open would cause one or more
  891.              error messages to appear.  This problem was due to a
  892.              missing begin-end statement set.
  893.  
  894.            . Added a horizontal scroll bar to the browser to allow
  895.              users to use the mouse for horizontal scrolling.
  896.  
  897.            . Modified code to make the hotkeys on the Search screen
  898.              Yellow On Blue instead of White On Blue.
  899.  
  900.            . Decreased the initial height of the Browser by 2 lines.
  901.  
  902.            . Fixed a problem where the program would terminate or
  903.              hang when attempting to compare a duplicate record to
  904.              an original record.  The duplicate record (object) was
  905.              not being initialized with a call to Init.
  906.  
  907.            . Fixed a problem where the browser would place an at (@)
  908.              symbol in the first field of the database if it
  909.              attempted to get a blank or non-existent record from
  910.              the browser listing.  If an error occurs, Infodex will
  911.              reset the database to the first record.
  912.  
  913.            . Fixed a problem where the headers within the browser
  914.              were not starting on the same column as the data
  915.              positioned below them.
  916.  
  917.            . Added hot-keys to the radio buttons located on the
  918.              search screen to allow users to access needed fields
  919.              more rapidly.
  920.  
  921.            . Expanded the information displayed in the Browser by
  922.              including all fields that serve as index keys.  The
  923.              extra fields are on the right side of the browser, and
  924.              can be accessed by using the arrow keys.  They do not
  925.              immediately show up in order to keep the display as
  926.              tidy as possible.
  927.  
  928.            . Modified code to display all records found within the
  929.              Browser when a search routine is executed.
  930.  
  931.            . Added complete error checking and processing for all
  932.              errors generated by the database functions.
  933.  
  934.            . Modified code for the common template to disable
  935.              the ability to allow the user to move the dialog box
  936.              around on the screen.  The template should be non-
  937.              moveable.
  938.  
  939.            . Dramatically re-arranged code to create a master
  940.              template object, which allows new objects (templates)
  941.              to be created from the master template.  New code
  942.              uses virtual methods to override the master template
  943.              methods.  If a parent method is called by accident, a
  944.              "RecordType Not Defined ..." error message will appear,
  945.              indicating the source of the problem.
  946.  
  947.            . Modified code to select the current record from the
  948.              Browsing window, even if Escape is pressed or the
  949.              right mouse button is clicked.
  950.  
  951.            . Placed the code for the Browsing window on the heap
  952.              instead of the stack to conserve stack space.
  953.  
  954.            . Modified code to continue executing the main Infodex
  955.              program instead of terminating it if the Browsing window
  956.              could not be initialized.
  957.  
  958.  
  959. 04-16-94 ■ Version 1.30  (Internal Revision - Not Released)
  960.  
  961.            . Added code to display a confirmation box when the user
  962.              presses Escape or clicks the right mouse button.  If
  963.              the record is being edited, a Cancel (Cancel-Edit) command
  964.              is issued.  If the record is not being edited, a dialog
  965.              box appears to confirm that the user wants to close the
  966.              database file.
  967.  
  968.            . Fixed a problem where the separator bars on the main
  969.              menu were not being connected properly to the right
  970.              side of the menu frame.
  971.  
  972.            . Added automatic detection to the Notes fields to deter-
  973.              mine whether or not the text has been modified.  Infodex
  974.              will only prompt to Save Note if the text has changed.
  975.  
  976.            . Added a dialog box to ask the user if the entire record
  977.              should be saved after the Notes field has been edited
  978.              and saved.
  979.  
  980.            . Removed the OpenFile routine from the overlaid section
  981.              of the code.  This routine was causing spurious errors
  982.              and program termination when it was contained in the
  983.              overlaid section of the code.
  984.  
  985.            . Added initial support for overlays.  Overlaid about
  986.              10K of program code.
  987.  
  988.            . Added initial code to support printing reports using
  989.              form-type layouts.
  990.  
  991.            . Added a Print button to the main template to allow
  992.              users to print records within a database.
  993.  
  994.            . Added key support to allow users to press enter on a
  995.              record in the browser, causing the record to be shown
  996.              on the editing screen.
  997.  
  998.            . Added a browsing screen to allow users to browse
  999.              for one or more records in the database.
  1000.  
  1001.            . Changed the filenames of the template files to
  1002.              reflect the template name.  Changed all internal
  1003.              variable and command names to match the template
  1004.              name.
  1005.  
  1006.            . Corrected a problem where button invisibility was
  1007.              not being handled properly.
  1008.  
  1009.            . Fixed a problem where an Isam error #9903 (File Not
  1010.              Found) was occurring when Infodex attempted to open a
  1011.              file from another directory.  Added a full path to
  1012.              the front of the filename that is being opened and
  1013.              created by the Isam routines.
  1014.  
  1015.            . Modified the date fields for the Insurance template to
  1016.              be stored in a 00-00-0000 format.
  1017.  
  1018.            . Created a specialized command processor table for
  1019.              handling template commands.  This fixed a problem where
  1020.              adding commands to the default table at run time would
  1021.              cause the Up arrow key, Down arrow key, and other keys
  1022.              to trigger exit commands from dialog boxes other than
  1023.              the user templates.
  1024.  
  1025.            . Decided to make all templates the same dimensions,
  1026.              allowing for easier consistency within the code.
  1027.  
  1028.            . Modified code to allow command button to be placed
  1029.              on top of each other when there are visible.  In order
  1030.              to work around a programming bug, added a simple blue-
  1031.              on-blue frame to cover up disabled controls that should
  1032.              have been made invisible.  Controls that are still
  1033.              enabled automatically come to the front.  This allows
  1034.              the Save and Cancel buttons to be placed in the same
  1035.              location as non-edit buttons, and only be displayed
  1036.              when needed.
  1037.  
  1038.            . Modified code that writes text to the hint line to
  1039.              only change the header text on the bottom row, instead
  1040.              of adding a new header each time a change was made.
  1041.              This speeds up the writing process and reduces the
  1042.              snow and other writing that is displayed in this area.
  1043.  
  1044.            . Added support to rebuild the index (.IX) file in the
  1045.              event that it is erased or corrupted.
  1046.  
  1047.  
  1048. 04-10-94 ■ Version 1.20  (Internal Revision - Not Released)
  1049.  
  1050.            . Fixed a problem where the Notes indicator was being
  1051.              displayed on the BackDrop hint line, even if the notes
  1052.              field was blank.  This problem occurred on every template,
  1053.              except the main Business template.  The Business Notes
  1054.              field was being referenced at all times, instead of
  1055.              changing based on the actual template.  Also, the Notes
  1056.              field was being referenced as a 1-based array, instead
  1057.              of a 0-based array, which is required for Asciiz types.
  1058.  
  1059.            . Fixed problem where the cursor was not being restored
  1060.              after Infodex was exited.
  1061.  
  1062.            . Modified the EraseTemplateFields routine to use the
  1063.              FillChar method to empty the entire contents of the
  1064.              record, instead of setting each individual field to a
  1065.              blank value.
  1066.  
  1067.            . Changed the size of the buffer that is allowed when
  1068.              editing a Notes field to be the exact size of Asciiz
  1069.              string that is passed into the procedure.
  1070.  
  1071.            . Modified code to display the user's registration name
  1072.              on the About screen.  If Infodex is unregistered, a
  1073.              registration reminder will be displayed.
  1074.  
  1075.            . Created a procedure to automatically draw STSI's
  1076.              distinctive backdrop using any text string.
  1077.  
  1078.            . Added a bracketed display to the lower right corner of
  1079.              the hint line to inform users whether or not the Notes
  1080.              field contains any data for the current record.  When
  1081.              the 'N' character appears between the brackets, the
  1082.              notes field contains data.  If the character field is
  1083.              blank, the notes field is empty.
  1084.  
  1085.            . Added code to differentiate between adding a new record
  1086.              and modifying an existing record.  Enhanced trapping
  1087.              of the PgUp, PgDn, Ctrl-Home, and Ctrl-End keys to
  1088.              prevent users from moving between records while editing
  1089.              a record.
  1090.  
  1091.            . Added a dialog box with a "Done" command button to the
  1092.              View A Template screens to allow users to view the
  1093.              template and select Done with the mouse or the keyboard
  1094.              when they are finished.
  1095.  
  1096.            . Added support to read the name of an existing database
  1097.              file from the Infodex command line.  When Infodex reads
  1098.              the command line, it checks for the existence of this
  1099.              file, and if it exists, loads it using the proper template.
  1100.  
  1101.            . Added support for the ModifyRecord routine to modify
  1102.              changed records when they have changed from the original.
  1103.  
  1104.            . Fixed drastic problems with pointers to note fields.
  1105.              Changed all Ascii-z pointer strings to non-pointer
  1106.              Ascii-z strings.  It appears as though the pointer
  1107.              was actually being stored in the data file, rather
  1108.              than the ascii-z string.  Modified routines to
  1109.              accommodate the difference in data types.
  1110.  
  1111.            . Fixed a problem where selecting Cancel on the Search
  1112.              dialog box would produce an error message that the
  1113.              search string was not found.  Modified code to only
  1114.              attempt the search process if Ok is selected from the
  1115.              Search dialog box.
  1116.  
  1117.            . Fixed a problem where the error message "Search String
  1118.              Not Found." would appear when first creating a database
  1119.              or opening an empty database.
  1120.  
  1121.            . Added a "View A Template" option to the Infodex Settings
  1122.              menu to allow users to view any of the available
  1123.              templates without actually creating a database.
  1124.  
  1125.            . Added a confirmation dialog box to the Delete record
  1126.              routine to make sure that records are not mistakenly
  1127.              deleted by the user.
  1128.  
  1129.            . Added user exit commands for the editing fields on each
  1130.              template to allow users to use the down and up arrow keys
  1131.              to go to the next or previous field, respectively.  Also
  1132.              added special commands to allow the PgUp, PgDn, Ctrl-Home,
  1133.              and Ctrl-End keys to go to the previous, next, first, and
  1134.              last records, respectively.
  1135.  
  1136.  
  1137. 04-06-94 ■ Version 1.10  (Internal Revision - Not Released)
  1138.  
  1139.            . Repositioned menus to be centered when a sub-menu is
  1140.              opened beside the main menu.
  1141.  
  1142.            . Added Delete An Existing Database option to the main
  1143.              menu to allow users to delete a previously created
  1144.              database.  This option deletes the selected database
  1145.              file (.DAT), as well as the accompanying files (.IX and
  1146.              .INF) files.
  1147.  
  1148.            . Added About Infodex option to the main menu.  Added
  1149.              Registration Information option to the main menu to
  1150.              display the terms and conditions for use of Infodex.
  1151.  
  1152.            . Added support for a searching function to locate
  1153.              records based on any of several keys defined for each
  1154.              template.  This search function is currently case-
  1155.              insensitive.
  1156.  
  1157.            . Added a common unit to contain all of the template-
  1158.              specific code.  This makes adding a new template much
  1159.              easier, leaving less room for error.
  1160.  
  1161.            . Lengthened the Company Name field on the Business
  1162.              template to accomodate longer company names.
  1163.  
  1164.            . Added code to display the total records on the bottom
  1165.              line of the screen.
  1166.  
  1167.            . Added support for Library and Insurance templates.
  1168.  
  1169.            . Changed heading on Notes field to be generic, instead
  1170.              of having a specific heading for each template type.
  1171.  
  1172.            . Fixed a problem where the First and Last routines
  1173.              were not working properly.  Record "wrapping" was
  1174.              necessary.
  1175.  
  1176.            . Modified routine to center the template header over
  1177.              the data fields, rather than the entire dialog box.
  1178.  
  1179.            . Added routine to create a generic backdrop, with a
  1180.              mathematical formula of shifting.  This fixed a problem
  1181.              where the text on the right side of the backdrop was
  1182.              one character too close to the edge.
  1183.  
  1184.            . Added routines to read and write a .INF file for each
  1185.              database created with Infodex.  This allows Infodex
  1186.              to read the .INF file to determine which template should
  1187.              be used when opening an existing file.
  1188.  
  1189.            . Initialized the bottom line of the backdrop as a help
  1190.              line to optionally offer hints or display the copyright
  1191.              information status.  This line will also be used as the
  1192.              memo status line and the status for the number of records
  1193.              contained in the database.
  1194.  
  1195.            . Database files created by the new version of Infodex
  1196.              will have .DAT extensions for data files and .IX
  1197.              extensions for the corresponding index files.
  1198.  
  1199.            . Added a dialog box to allow users to enter a filename
  1200.              when creating a new database.
  1201.  
  1202.            . Added 3-D appearance to all menus and dialog boxes.
  1203.  
  1204.            . Rewrote Infodex in a new programming language.  Added a
  1205.              stylish background with a new style of menuing system.
  1206.              Created a default template layout with command buttons
  1207.              to be used for all future templates.  Created Business,
  1208.              Personal, and Software templates.
  1209.  
  1210.  
  1211.  
  1212. 12-30-93 ■ Version 1.02
  1213.  
  1214.            . Rearranged procedures for unloading forms and closing
  1215.              the database.
  1216.  
  1217.            . Added a command to flush the keyboard after the user
  1218.              presses a key at the welcome and/or logo screens.  The
  1219.              keypress would be passed to the data entry screen if command
  1220.              line parameters were being used.
  1221.  
  1222.            . Added a check for the existence of a .DEX file before
  1223.              attempting to open it.  This step was missed during
  1224.              the processing of command line parameters.
  1225.  
  1226.            . Fixed several potential problems in the command line
  1227.              parameter interpretation routine.  Fixed problem where
  1228.              ".DEX" was not being appended to parameters that did
  1229.              not have an extension, and added code to convert any
  1230.              parameters to UPPER CASE.
  1231.  
  1232.            . Added code to store any command line parameter(s) into
  1233.              a temporary variable to prevent potential corruption of
  1234.              the command line parameters.
  1235.  
  1236.  
  1237. 10-12-93 ■ Version 1.01
  1238.  
  1239.            . Fixed problem where Infodex could not find the INFODEX.INI
  1240.              file and other various problems, when a set was not found
  1241.              in the AUTOEXEC.BAT, and the directory C:\INFODEX did not
  1242.              exist.  Now, Infodex checks first for an AUTOEXEC.BAT set,
  1243.              then attempts to locate the C:\INFODEX directory, and if 
  1244.              neither of those exist, Infodex will use the current
  1245.              directory.
  1246.  
  1247.            . Fixed problem where the program would crash if a user
  1248.              attempted to search for a record when no records had yet
  1249.              been entered in the database.
  1250.  
  1251.            . Changed method of searching for text.  Now, when F4 is
  1252.              pressed or Search is selected, a dialog box pops up, where
  1253.              the user can enter the text to search for in the first field
  1254.              of each template.  Once OK is selected, search is executed,
  1255.              with result displaying on the screen.
  1256.  
  1257.            . Added error trapping when users attempt to create a new
  1258.              data file to make sure that neither the filename cannot be
  1259.              longer than 8 characters, and the extension cannot be longer
  1260.              than 3 characters.
  1261.  
  1262.            . Clarified text in help fields on New File screen.
  1263.  
  1264.            . Changed headings on Open File screen to read "Open Data File"
  1265.              instead of "Open Project" and "Data Filename:" instead of
  1266.              "Project File:".
  1267.  
  1268.  
  1269. 10-07-93 ■ Version 1.00 
  1270.  
  1271.            . Initial release of Infodex.
  1272.